package com.huizhonglm.diap;

import android.app.Application;
import android.content.Context;

import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;

import org.xutils.x;

/**
 * 描述当前类的作用
 *
 * @author LiXiaoLong
 * @version 1.0
 * @since 2016-03-01 14:32
 */
public class DiapApplication extends Application {

    private static DiapApplication mInstance;

    public static boolean isDebug = false;

    public static DiapApplication getInstance() {
        return mInstance;
    }

    public Context getContext() {
        return getApplicationContext();
    }

    @Override
    public void onCreate() {
        super.onCreate();
        mInstance = DiapApplication.this;
        x.Ext.init(DiapApplication.this);
        x.Ext.setDebug(isDebug);
        initImageLoader();
    }

    /**
     * 初始化图片加载类配置信息
     *
     */
    private void initImageLoader() {
        ImageLoaderConfiguration config = ImageLoaderConfiguration.createDefault(getApplicationContext());
        ImageLoader.getInstance().init(config);// 全局初始化此配置

//        ImageLoaderConfiguration config = new ImageLoaderConfiguration
//                .Builder(getApplicationContext())
//                .threadPriority(Thread.NORM_PRIORITY - 2)
//                .denyCacheImageMultipleSizesInMemory()
//                // 当同一个Uri获取不同大小的图片，缓存到内存时，只缓存一个。默认会缓存多个不同的大小的相同图片
//                .diskCacheFileNameGenerator(new HashCodeFileNameGenerator())
//                // 通过Md5将url生产文件的唯一名字
//                .diskCacheFileCount(200)
//                // 设置缓存文件的数量
//                .diskCacheSize(200 * 1024 * 1024)
//                // 设置缓存的大小
//                .tasksProcessingOrder(QueueProcessingType.LIFO)
//                // 设置打印Log信息
//                .writeDebugLogs()
//                .imageDownloader(new BaseImageDownloader(getApplicationContext(), 30000, 30000))
//                .build();
////        // Initialize ImageLoader with configuration.
//        ImageLoader.getInstance().init(config);
    }
}
